package br.com.localab.tipoAmbiente.controlador;

import java.io.Serializable;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import org.hibernate.Session;

import br.com.localab.fachada.Fachada;
import br.com.localab.tipoAmbiente.modelo.TipoAmbiente;
import br.com.localab.util.autenticar.FacesContextUtil;

@ManagedBean
@ViewScoped
public class EditarTipoAmbienteMB implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	private String codigo;
	private String nome;	
	private String descricao;
	private Fachada fachada;
	private String codigoBloco;
	private Session s;
	private TipoAmbiente tipoAmbiente;

	@PostConstruct
	public void init() {
		this.tipoAmbiente = (TipoAmbiente) FacesContextUtil
				.getSessionAttribute("editarTipoAmbiente");
		codigo = tipoAmbiente.getCodigo() + "";
		nome = tipoAmbiente.getNome();
		descricao = tipoAmbiente.getDescricao();
		codigoBloco = tipoAmbiente.getBloco().getNome();
		
		FacesContextUtil.setSessionAttribute("editarTipoAmbiente", null);
	}

	public String editar() {
		s = FacesContextUtil.getRequestSession();
		fachada = new Fachada(s);
		String mensagem = "";
		TipoAmbiente tipoAmbiente = fachada.tipoAmbienteProcurar("nome",nome);
		tipoAmbiente.setNome(nome);
		tipoAmbiente.setDescricao(descricao);
		tipoAmbiente.setAtivo(true);
		mensagem = fachada.tipoAmbienteEditar(tipoAmbiente);
		FacesContextUtil.setMessageInformacao("Info", mensagem);
		limpar();
		return null;
	}

	public void limpar() {
		nome = "";
		descricao = "";
		codigo = "";
	}

	public TipoAmbiente getTipoAmbiente() {
		return tipoAmbiente;
	}

	public void setTipoAmbiente(TipoAmbiente tipoAmbiente) {
		this.tipoAmbiente = tipoAmbiente;
	}

	
	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getCodigo() {
		return codigo;
	}

	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}

	public String getDescricao() {
		return descricao;
	}

	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}

	public String getCodigoBloco() {
		return codigoBloco;
	}

	public void setCodigoBloco(String codigoBloco) {
		this.codigoBloco = codigoBloco;
	}

	
}
